<?php
/**
* @package		auto_occasion
* @subpackage	recherche
* @version  1
* @author 
*/

/**
* Handler d'URL pour les pages : recherche d'une annonce
* @package		auto_occasion
* @subpackage	recherche
*/
	class rechercheUrlsHandler implements jIUrlSignificantHandler {
		/**
		* fonction parse url
		* @param	object	$url
		* @return	object	$urlact
		*/
		function parse($url){ 
			global $_SESSION, $gJConfig, $gJCoord;
			$pathInfo = substr($url->pathInfo, 1, (strrpos($url->pathInfo,"/")==strlen($url->pathInfo)-1)?strlen($url->pathInfo)-2:strlen($url->pathInfo)); 
			$pathInfo = explode('-', $pathInfo);
            
			//Ce handler acepte un minimum de 2 paramètres
			if(sizeof($pathInfo) < 4){
				//return false;
			}

			//On unescape chaque paramètre du pathInfo
			for($i=0; $i<sizeof($pathInfo); $i++) {
				$pathInfo[$i] = jUrl::unescape($pathInfo[$i]);
                
			}

			$urlact = new jUrlAction($url->params);

			return $urlact;
		}
		/**
		* fonction pour creer l'url
		* @param	object	$url
		* @param	object	$urlact
		*/	
		function create($urlact, $url){
			
			global $gJConfig, $gJCoord;
//            $modele = $gJCoord->request->getParam('modele');
//            $marque = $gJCoord->request->getParam('marque');
//            $region = $gJCoord->request->getParam('region');
//            $prix   = $gJCoord->request->getParam('prix');

//            jClasses::inc('commun~common');
//            // récupération du param id dans l'url
//            jLog::dump($modele . '-00mod-');
//            jLog::dump($marque. '-00mark-');
//            if ($modele || $marque)  {
//                
//                if ($modele) {
//                        $modele = common::chargeParId($modele, 'ao_modele');
//                        $modele = $modele->modele_libelle;
//                }
//                if ($marque) {
//                        $marque = common::chargeParId($marque, 'ao_marque');
//                        $marque = $marque->marque_libelle;
//                }
//
//            } 
            
            $pathInfo = array();
			if($gJConfig->urlengine['multiview'] != '1'){ //On ajoute un / au début de l'URL si on est pas en multiview
				array_push($pathInfo, '');
			}

			// Ajout des éléments dans l'url : marque/modele/
            
//            if ($marque) 
//                array_push($pathInfo, $marque);
//            if ($modele) 
//                array_push($pathInfo, $modele);
            
            if(isset($_SESSION['SESS_ANNONCE_SEARCH'])){
                $sessionCritere = unserialize($_SESSION['SESS_ANNONCE_SEARCH']);
                 if($sessionCritere->marqueId != 0){
                        $marque = common::chargeParId($sessionCritere->marqueId, 'ao_marque');
                        $marque = $marque->marque_libelle;
                 } elseif($sessionCritere->lMarque) {
                        $marque = $sessionCritere->lMarque;
                 }
                if($sessionCritere->modeleId != 0){
                        $modele = common::chargeParId($sessionCritere->modeleId, 'ao_modele');
                        $modele = $modele->modele_libelle;
                } elseif($sessionCritere->lModele) {
                        $modele = $sessionCritere->lModele;
                }

                (($marque != '') && ($marque != '0')) ?array_push($pathInfo, jUrl::escape($marque)) : 0;
                (($modele != '') && ($modele != '0')) ?array_push($pathInfo, jUrl::escape($modele)) : 0;
                ($sessionCritere->region != '') ?array_push($pathInfo, jUrl::escape($sessionCritere->region)) : 0;
                ($sessionCritere->prix != '') ?array_push($pathInfo, jUrl::escape($sessionCritere->prix)) : 0;
                ($sessionCritere->cat != '') ?array_push($pathInfo, jUrl::escape($sessionCritere->cat)) : 0;
                ($sessionCritere->carbu != '')?array_push($pathInfo, jUrl::escape($sessionCritere->carbu)) : 0;
                ($sessionCritere->porte != '')?array_push($pathInfo, jUrl::escape($sessionCritere->porte)) : 0;
                ($sessionCritere->annee != '')?array_push($pathInfo, jUrl::escape($sessionCritere->annee)) : 0;
                ($sessionCritere->km != '')?array_push($pathInfo, jUrl::escape($sessionCritere->km)) : 0;
                ($sessionCritere->vitesse != '')?array_push($pathInfo, jUrl::escape($sessionCritere->carbu)) : 0;
                ($sessionCritere->localisation != '')?array_push($pathInfo, jUrl::escape($sessionCritere->carbu)) : 0;
                ($sessionCritere->vendeur != '')?array_push($pathInfo, jUrl::escape($sessionCritere->carbu)) : 0;
                ($sessionCritere->motcle != '')?array_push($pathInfo, jUrl::escape($sessionCritere->motcle)) : 0;
                ($sessionCritere->image != '')?array_push($pathInfo, jUrl::escape('avec image') ): 0;
                ($sessionCritere->video != '')?array_push($pathInfo, jUrl::escape('avec video')) : 0;
                ($sessionCritere->main != '')?array_push($pathInfo, jUrl::escape('première main')) : 0;
                ($sessionCritere->garantie != '')?array_push($pathInfo, jUrl::escape('avec garantie')) : 0;
            }
//            
//            //si region et tranche de prix
//            print_r($region);
//            print_r($prix);
//            array_push($pathInfo, $region);
//            array_push($pathInfo, $prix);
            $url->pathInfo  = '/'.substr(implode($pathInfo, '-'),1);

		}
	}
?>